#!/bin/bash

PACKAGE="$1"
SKIP_PACKAGES="$PACKAGE tests management urls"
SKIP_FILES="djcelery.management.rst
            djcelery.management.commands.rst
            djcelery.management.commands.celeryd.rst
            djcelery.management.commands.celerybeat.rst
            djcelery.management.commands.celeryev.rst
            djcelery.mon.rst
            djcelery.monproj.rst
            djcelery.monproj.urls.rst
            djcelery.admin.rst
            djcelery.admin_utils.rst
            djcelery.contrib.rst
            djcelery.backends.rst
            djcelery.migrations.rst
            djcelery.picklefield.rst
            djcelery.transport.rst
            djcelery.migrations.0001_initial.rst

modules=$(find "$PACKAGE" -name "*.py")

failed=0
for module in $modules; do
    dotted=$(echo $module | sed 's/\//\./g')
    name=${dotted%.__init__.py}
    name=${name%.py}
    rst=$name.rst
    skip=0
    for skip_package in $SKIP_PACKAGES; do
        [ $(echo "$name" | cut -d. -f 2) == "$skip_package" ] && skip=1
    done
    for skip_file in $SKIP_FILES; do
        [ "$skip_file" == "$rst" ] && skip=1
    done

    if [ $skip -eq 0 ]; then
        if [ ! -f "docs/reference/$rst" ]; then
            if [ ! -f "docs/internals/reference/$rst" ]; then
                echo $rst :: FAIL
                failed=1
            fi
        fi
    fi
done

exit $failed
